LightWave ScreamerNet II Commands ================================= Allen Hastings last revised 7/95 This document briefly summarizes the commands recognized by ScreamerNet render modules running in SN II mode (started with the "-2" option), and is current as of version 3.99d. To send a command to a render module, write it into the first line of the job file specified when the render module was executed (the filename is the second argument of the LWSN command line). Note that render modules tries to read a config file before starting to poll the job file, which means that the filenames appearing with the "load" and "output" commands may be relative to a content directory set by the config file. Another thing to note is that if the same command is sent multiple times in a row, the render module will ignore all but the first instance (with the exception of the "wait" and "init" commands). If multiple render commands are sent in a row, they are not ignored if the specified frame range is different from one command to the next. wait This command tells the render module to wait. It will write "Ready" into its acknowledgement file after receiving the command (before pausing). The pause will normally be one second, after which the render module will again read its job file, but an optional integer can be added after the wait command specifying an additional number of seconds of delay. This command will often be sent to a render module right after another command that may take a while to complete (like "render"). This allows a render farm controller to determine when the previous task has been completed by waiting for "Ready" in the acknowledgement file. In an earlier version of SN II, "Ready" was returned when any command finished, but this caused problems when commands were completed quickly. For example, a fast machine might finish rendering a frame before the controller ever saw the acknowledgement that rendering had begun. The current scheme avoids such potential confusion. init This command causes the render module to clear its current scene and return the type of CPU it's running on. The acknowledgement file will contain the word "Initializing" on line one and the machine name (which currently is one of "Amiga", "x86", "MIPS", "Alpha", or "SGI") on line two. load This command causes the render module to load the specified scene file. The filename is often on another networked machine, and, as mentioned earlier, it may be relative to a content directory if the render module found a config file when it first started. This also applies to the object and image filenames specified within the scene file. "Loading" will be written into the acknowledgement file. render This command causes the render module to render the specified frames of the scene that was loaded with the "load" command. LightWave 4.0's built-in controller always sets the last frame equal to the first frame (so that only one frame is generated per render command), but this is not necessary. " output This command sets the prefix parts of the filenames using by the render module to save rendered RGB and alpha channel output. As in LightWave's record panel and scene files, the prefix also includes the file path. Either prefix may also read "(none)", which turns off saving of that type of image. Note that if a 32-bit RGB output format is in use, the alpha channel will be saved in the same files as the color information and the alpha prefix should then be set to "(none)". LightWave's built-in controller does not use this command, which means that the prefixes set by the scene file itself are used. quit This commands ends execution of the render module. Before the module exits, it writes "Offline" into its acknowledgement file.